package com.iuie.ns.system.service.role;

import java.util.List;

import com.iuie.ns.frame.service.IBaseService;
import com.iuie.ns.frame.web.dataset.vo.Page;
import com.iuie.ns.system.vo.resource.SysResourceVO;
import com.iuie.ns.system.vo.role.SysRoleVO;


/**
 * 角色业务接口
 * @author lj
 * @createTime 2017年1月1日 下午4:27:54
 */
public interface ISysRoleService extends IBaseService<SysRoleVO>{

	/**
	 * 条件分页查询所有角色
	 * @param role
	 * @param page
	 * @return
	 * @date 2017年7月19日 下午11:16:41
	 */
	List<SysRoleVO> findAllByPage(SysRoleVO role, Page page);

	/**
	 * 根据角色id查询与角色关联的菜单
	 * @param roleId
	 * @return 
	 * @date 2017年7月21日 上午8:49:22
	 */
	List<SysResourceVO> findMenusById(String roleId);

    /**
     * 保存角色和菜单间的关系
     * @param roleId
     * @param menuIds
     * @date 2017年7月23日 下午3:22:46
     */
    void saveRelation(String roleId, String[] menuIds);
	
    /**
     * 根据角色ID查询角色信息
     * @param roleId
     * @return
     * @date 2017年7月25日 上午12:47:14
     */
    SysRoleVO findById(String roleId);
    
    /**
     * 更新角色
     * @param role
     * @date 2017年7月25日 上午12:59:24
     */
    void updateRole(SysRoleVO role);
}
